package com.itheima.example;

import java.util.Random;
import java.util.Scanner;

public class Test5 {
    public static void main(String[] args) {
        // 需求：录入员工工号，随机一组工号出来。
        // 1、定义一个动态初始化的数组存储工号
        int[] codes = new int[5];

        // 2、录入5名员工的工号
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < codes.length; i++) {
            // i = 0 1 2 3 4
            System.out.print("请您输入第" + (i + 1) + "个员工的工号：" );
            int code = sc.nextInt();
            codes[i] = code;
        }

        // 3、核心逻辑（遍历数组中的每个元素，随机一个索引，让当前位置的元素与该索引位置处的元素值进行交换即可）
        Random r = new Random();
        // codes = [14 , 24, 89, 100, 23]
        //          i
        for (int i = 0; i < codes.length; i++) {
            // 当前元素：codes[i]
            // 随机索引：范围必须在数组索引范围内部。   codes[index]
            int index = r.nextInt(codes.length);

            // 让当前元素与索引位置处的元素交换值???
            int temp = codes[index];
            codes[index] = codes[i];
            codes[i] = temp;
        }

        // 4、遍历数组即可
        for (int i = 0; i < codes.length; i++) {
            System.out.print(codes[i] + "\t");
        }
    }
}
